//
//  SenseidIdsApi.h
//  SenseidIdsSDK
//
//  Created by 吴畏 on 2024/4/3.
//

#import <Foundation/Foundation.h>
#import <SenseidIdsSDK/LabelId.h>
#import <SenseidIdsSDK/ApiDelegate.h>
#import <SenseidIdsSDK/Frame.h>

NS_ASSUME_NONNULL_BEGIN

@interface SenseidIdsApi : NSObject

/// 获取SDK版本
/// @return 版本号
+ (NSString *)getVersion;

/// 是否开启内部Log
/// @param isEnabled 是否开启
/// @param callback log 回调
+ (void)enableLog: (BOOL)isEnabled callback:(void (^)(NSString *log))callback;

/// 初始化 SDK
/// @param labelId 	检测能力标签
/// @param token 	访问令牌，用于验证用户身份和权限等
/// @param uuid 		设备唯一标识
/// @param delegate	检测回调
- (instancetype)initWithLabelId:(LabelId)labelId andToken:(NSString *)token andUUID:(NSString *)uuid andDelegate:(id<APIDelegate>)delegate andError:(SIErrorCode*) errCode;

/// 输入用于检测的图像帧数据，需要连续输入，直到检测完成或者发生错误
/// @param frame  检测的图像帧数据
- (void)input:(Frame *)frame;

- (void)start;

/// 退出检测
- (void)cancel;

@end

NS_ASSUME_NONNULL_END
